home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD ROM Paradise Collection 4
/
CD ROM Paradise Collection 4 1995 Nov.iso
/
bbs
/
both_203.zip
/
BOTHALL.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-09-17
|
8KB
|
474 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
String STRING033
String STRING034
String STRING035
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
String STRING044
String STRING045
String STRING046
String STRING047
String STRING048
String STRING049
String STRING050
String STRING051
String STRING052
String STRING053
String STRING054
String STRING055
String STRING056
String STRING057
String STRING058
String STRING059
String STRING060
String STRING061
String STRING062
String STRING063
String STRING064
String STRING065
String STRING066
String STRING067
String STRING068
;------------------------------------------------------------------------------
STRING067 = PPEPath() + "LASTDATE.DAT"
STRING024 = PPEPath() + "LASTCALL.TMP"
STRING019 = PPEPath() + "ALLCALL.TMP"
STRING022 = PPEPath() + "LASTSTAT.TMP"
STRING023 = PPEPath() + "ALLSTAT.TMP"
STRING036 = PPEPath() + PPEName() + ".CFG"
STRING031 = "Sysop"
STRING032 = ""
STRING033 = ""
STRING034 = ""
STRING035 = ""
INTEGER006 = Date()
STRING055 = "@X07"
STRING014 = Space(1)
STRING015 = Space(2)
INTEGER001 = 0
INTEGER002 = 0
INTEGER003 = 20
INTEGER004 = 500
STRING038 = "║"
STRING037 = "║"
STRING039 = "╔═════════════════════════════════════════════════════════════════════════════╗"
STRING040 = "╠═════════════════════════════════════════════════════════════════════════════╣"
STRING020 = "╚═════════════════════════════════════════════════════════════════════════════╝"
STRING030 = "@X0E@MORE@"
GetUser
Log "Minutes Used: " + String(MinOn()), 0
Newline
PrintLn "@X0ERunning BOTHALL.PPE v2.03 @X0A(c) Copyright 1994 @X0Bby A. Segura@X07"
Newlines 2
PrintLn "@X0CMinutes Used: " + String(MinOn())
Newlines 2
PrintLn "@X0AThanks for calling, @X0B@FIRST@!@X07"
Newline
If (Exist(STRING036)) Then
FOpen 1, STRING036, 0, 0
Newline
SPrintLn "... Loading CFG Records ... (BOTHALL.PPE)."
Newline
FGet 1, STRING001
FGet 1, INTEGER003
FGet 1, INTEGER004
FGet 1, STRING031
FGet 1, STRING032
FGet 1, STRING033
FGet 1, STRING034
FGet 1, STRING035
FGet 1, INTEGER005
FGet 1, STRING043
STRING043 = Left(STRING043, 4)
FGet 1, STRING044
STRING044 = Left(STRING044, 4)
FGet 1, STRING045
STRING045 = Left(STRING045, 4)
FGet 1, STRING046
STRING046 = Left(STRING046, 4)
FGet 1, STRING047
STRING047 = Left(STRING047, 4)
FGet 1, STRING048
STRING048 = Left(STRING048, 4)
FGet 1, STRING049
STRING049 = Left(STRING049, 4)
FGet 1, STRING050
STRING050 = Left(STRING050, 4)
FGet 1, STRING051
STRING051 = Left(STRING051, 4)
FGet 1, STRING052
STRING052 = Left(STRING052, 4)
FGet 1, STRING053
STRING053 = Left(STRING053, 4)
FGet 1, STRING054
STRING054 = Left(STRING054, 4)
FGet 1, STRING056
STRING056 = Left(STRING056, 4)
FGet 1, STRING057
STRING057 = Left(STRING057, 4)
FGet 1, STRING058
STRING058 = Left(STRING058, 4)
FGet 1, STRING059
STRING059 = Left(STRING059, 4)
FGet 1, STRING060
STRING060 = Left(STRING060, 4)
FGet 1, STRING061
STRING061 = Left(STRING061, 4)
FGet 1, STRING062
STRING062 = Left(STRING062, 4)
FGet 1, STRING063
STRING063 = Left(STRING063, 4)
FGet 1, STRING064
STRING064 = Left(STRING064, 4)
FGet 1, STRING041
FGet 1, STRING066
FGet 1, STRING068
STRING068 = Left(STRING068, 4)
FClose 1
Else
PrintLn "Tell SysOp BOTHALL.CFG file is missing! (BOTHALL.PPE)."
Log "BOTHALL.CFG missing, shifting to defaults!", 1
Newline
Endif
If (CurSec() == 0) Goto LABEL008
STRING018 = Mixed(U_Name())
If (STRING018 == Mixed(STRING031)) Goto LABEL008
If (STRING018 == Mixed(STRING032)) Goto LABEL008
If (STRING018 == Mixed(STRING033)) Goto LABEL008
If (STRING018 == Mixed(STRING034)) Goto LABEL008
If (STRING018 == Mixed(STRING035)) Goto LABEL008
KbdChkOff
CdChkOff
DtrOff
Delay 18
DtrOn
If ((STRING066 == 1) && Exist(STRING019)) Then
If (Exist(STRING067)) Then
FOpen 1, STRING067, 0, 0
FGet 1, INTEGER007
FClose 1
If (INTEGER006 > INTEGER007) Then
Delete PPEPath() + "YSTAT"
Delete PPEPath() + "YCALL"
Rename PPEPath() + "ASTAT", PPEPath() + "YSTAT"
Rename PPEPath() + "ACALL", PPEPath() + "YCALL"
Delete STRING019
Delete STRING023
Endif
Goto LABEL001
Endif
Log "File LASTDATE.DAT not found! (BOTHALL.PPE)", 1
Newline
SPrintLn "File LASTDATE.DAT not found! (BOTHALL.PPE)"
Newline
Endif
:LABEL001
If ((INTEGER005 < 0) || (INTEGER005 > 500)) INTEGER005 = 500
If (INTEGER005 <> 500) Then
STRING025 = PPEPath() + "ACALL" + String(INTEGER005)
STRING002 = PPEPath() + "ASTAT" + String(INTEGER005)
Else
STRING025 = PPEPath() + "ACALL"
STRING002 = PPEPath() + "ASTAT"
Endif
If (STRING041 == "ARS9933MS") Then
STRING042 = "@X0D..........BOTHALL.PPE v2.03 @X0A(c) COPYRIGHT 1994 @X0Bby Al Segura @X0AREGISTERED@X0D.........@X07"
Else
STRING042 = "@X0D.........BOTHALL.PPE v2.03 @X0A(c) COPYRIGHT 1994 @X0Bby Al Segura @X0CUNREGISTERED@X0D........@X07"
Endif
STRING003 = STRING049 + Left(STRING018, 20) + STRING014
STRING008 = STRING054 + Right(String(U_Logons()), 3) + STRING014
STRING009 = STRING056 + Left(String(U_LDate()), 5)
STRING011 = STRING046 + Left(String(Date()), 5) + STRING014
STRING004 = STRING057 + Right(String(U_Ful()), 3) + STRING014
STRING005 = STRING058 + Right(String(U_Fdl()), 3) + STRING014
STRING006 = STRING059 + Right(String(U_MsgRd()), 5) + STRING014
STRING007 = STRING060 + Right(String(U_MsgWr()), 3) + STRING015
STRING012 = STRING061 + Right(String(U_Stat(4)), 3) + STRING014
STRING013 = STRING062 + Right(String(U_Stat(10)), 3) + STRING015
STRING016 = STRING063 + Right(String(U_Stat(14)), 3) + STRING014
STRING017 = STRING064 + Right(String(U_Stat(12)), 3)
STRING029 = STRING047 + Left(String(Time()), 5) + STRING014
If (U_Sec < INTEGER003) STRING010 = STRING051 + Right(String(U_Sec), 3) + STRING015
If (U_Sec >= INTEGER003) STRING010 = STRING052 + Right(String(U_Sec), 3) + STRING015
STRING021 = STRING011 + STRING029 + STRING003 + STRING010 + STRING008 + STRING005 + STRING004 + STRING006 + STRING007 + STRING012 + STRING013 + STRING016 + STRING017
FCreate 1, STRING022, 2, 0
FPutLn 1, STRING021
FClose 1
If (Exist(STRING023)) Goto LABEL002
FCreate 1, STRING023, 2, 0
FClose 1
:LABEL002
Append STRING023, STRING022
STRING021 = ""
FOpen 2, STRING022, 0, 0
FCreate 1, STRING002, 1, 0
:LABEL003
If (Ferr(2)) Goto LABEL004
FGet 2, STRING021
Select Case (INTEGER001)
Case 0
If (STRING021 == "") Goto LABEL004
FPutLn 1, "@CLS@"
FPutLn 1, STRING043 + STRING039 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING044 + STRING001 + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING040 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING045 + " Sec TOTAL Files MESSAGES# Cmnt SECURITY Dwn" + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING045 + "Date Time User Name Lvl Call Dwn Up Read Wrt Left Vio Pwrd Lmt" + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING040 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
Case 12
If (STRING021 == "") Goto LABEL004
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING020 + STRING055
FPutLn 1, STRING042
FPutLn 1, STRING030
INTEGER001 = -1
Case Else
If (STRING021 == "") Goto LABEL004
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
End Select
Inc INTEGER001
Inc INTEGER002
If (INTEGER002 >= INTEGER004) Goto LABEL004
Goto LABEL003
:LABEL004
If (INTEGER001 <> 0) Then
FPutLn 1, STRING043 + STRING020 + STRING055
FPutLn 1, STRING042
FPutLn 1, STRING030
Endif
FClose 1
FClose 2
Delete STRING023
Rename STRING022, STRING023
INTEGER001 = 0
INTEGER002 = 0
STRING021 = ""
STRING003 = STRING049 + Left(STRING018, 18) + STRING014
STRING026 = STRING050 + Left(Mixed(U_City), 21) + STRING014
STRING027 = STRING053 + Right(String(Carrier()), 5) + STRING015
STRING008 = STRING054 + Right(String(U_Logons()), 4) + STRING014
STRING010 = Left(STRING010, Len(STRING010) - 1)
STRING028 = STRING048 + Right(String(MinOn()), 3) + STRING014
STRING065 = STRING068 + Right(String(PcbNode()), 3) + STRING014
STRING021 = STRING011 + STRING029 + STRING028 + STRING003 + STRING026 + STRING010 + STRING027 + STRING008 + STRING065
FCreate 1, STRING024, 2, 0
FPutLn 1, STRING021
FClose 1
If (Exist(STRING019)) Goto LABEL005
FCreate 1, STRING019, 2, 0
FClose 1
:LABEL005
Append STRING019, STRING024
STRING021 = ""
FOpen 2, STRING024, 0, 0
FCreate 1, STRING025, 1, 0
:LABEL006
If (Ferr(2)) Goto LABEL007
FGet 2, STRING021
Select Case (INTEGER001)
Case 0
If (STRING021 == "") Goto LABEL007
FPutLn 1, "@CLS@"
FPutLn 1, STRING043 + STRING039 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING044 + STRING001 + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING040 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING045 + "Date Time Min User Name User's City Sec Baud Calls Node" + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING040 + STRING055
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
Case 13
If (STRING021 == "") Goto LABEL007
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
FPutLn 1, STRING043 + STRING020 + STRING055
FPutLn 1, STRING042
FPutLn 1, STRING030
INTEGER001 = -1
Case Else
If (STRING021 == "") Goto LABEL007
FPutLn 1, STRING043 + STRING038 + STRING021 + STRING043 + STRING037 + STRING055
End Select
Inc INTEGER001
Inc INTEGER002
If (INTEGER002 >= INTEGER004) Goto LABEL007
Goto LABEL006
:LABEL007
If (INTEGER001 <> 0) Then
FPutLn 1, STRING043 + STRING020 + STRING055
FPutLn 1, STRING042
FPutLn 1, STRING030
Endif
FClose 1
FClose 2
Delete STRING019
Rename STRING024, STRING019
If (STRING066 == 1) Then
FCreate 1, STRING067, 1, 0
FPutLn 1, INTEGER006
FClose 1
Endif
CdChkOn
KbdChkOn
SPrintLn "BOTHALL.PPE Completed Successfully!"
End
:LABEL008
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 41 Goto
; 86 Let
; 4 PrintLn
; 34 If
; 7 FCreate
; 4 FOpen
; 11 FClose
; 36 FGet
; 34 FPutLn
; 1 GetUser
; 6 Delete
; 3 Log
; 1 DtrOn
; 1 DtrOff
; 1 CdChkOn
; 1 CdChkOff
; 1 Delay
; 4 Inc
; 7 Newline
; 2 Newlines
; 1 KbdChkOn
; 1 KbdChkOff
; 3 SPrintLn
; 4 Rename
; 2 Append
;
;
; ■ Functions used :
;
; 2 -
; 161 +
; 1 -
; 19 ==
; 3 <>
; 2 <
; 2 >
; 3 >=
; 17 !
; 1 &&
; 1 ||
; 1 Len(
; 29 Left()
; 15 Right()
; 2 Space()
; 2 Ferr()
; 2 Date()
; 1 Time()
; 1 U_Name()
; 1 U_LDate()
; 2 U_Logons()
; 1 U_Ful()
; 1 U_Fdl()
; 22 String()
; 16 PPEPath()
; 1 U_MsgRd()
; 1 U_MsgWr()
; 1 PcbNode()
; 1 CurSec()
; 3 MinOn()
; 5 Exist()
; 1 Carrier()
; 4 U_Stat()
; 1 PPEName()
; 7 Mixed()
;
;------------------------------------------------------------------------------
;
; Analysis flags : B
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 9 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------